#include <stdio.h>
#include "octopus.h"

#define PIN			11		// pin to toggle/blink

int main ()
{
	struct octopus_context octopus;
	int     i;

	if (octopus_init (&octopus) < 0)
		printf ("error octopus_init: %s\n", octopus.error_str);

	if (octopus_open (&octopus) < 0)
	{
		//if(octopus_open_serial(&octopus,"20081109")<0){
		printf ("error octopus_open: %s\n", octopus.error_str);
		exit (0);
	}

	// display hw descriptor string
	{
		char    desc[64] = { 0 };
		if (octopus_get_hwdesc (&octopus, desc) < 0)
			printf ("ERROR octopus_get_hwdesc: %s\n", octopus.error_str);
		else
			printf (" Device: %s\n", desc);
	}

	if (octopus_io_init (&octopus, PIN) < 0)
		printf ("ERROR octopus_io_init: %s\n", octopus.error_str);

	if (octopus_io_set_pin_direction_out (&octopus, PIN) < 0)
		printf ("ERROR octopus_io_set_pin_direction_out: %s\n", octopus.error_str);

	for (i = 0; i < 10; i++)
	{
		if (octopus_io_set_pin (&octopus, PIN, 1) < 0)
			printf ("ERROR octopus_io_set_pin 1: %s\n", octopus.error_str);

		sleep(1);

		if (octopus_io_set_pin (&octopus, PIN, 0) < 0)
			printf ("ERROR octopus_io_set_pin 0: %s\n", octopus.error_str);

		sleep(1);
	}

	if (octopus_close (&octopus) < 1)
		printf ("ERROR: %s\n", octopus.error_str);

	return 0;
}
